import {
	AllApplication,
	Bookmark,
	BookmarkOne,
	Config,
	DeleteOne,
	Delete,
	Dislike,
	DislikeTwo,
	Female,
	Home,
	HourglassFull,
	Lightning,
	Like,
	Loading,
	LoadingOne,
	LoadingFour,
	Male,
	More,
	MoreApp,
	MoreOne,
	MoreTwo,
	Pic,
	Power,
	PreviewCloseOne,
	PreviewOpen,
	Radar,
	Refresh,
	Save,
	SaveOne,
	Search,
	Setting,
	System,
	Tag,
	TagOne,
	Tips,
	Tool,
	Translate,
	ZoomIn,
	ZoomOut,
	Caution,
	Harm,
	Protect,
	Report,
	AcceptEmail,
	AddPicture,
	Chinese,
	ChineseOne,
	Copy,
	CopyOne,
	EmailPush,
	English,
	Add,
	Edit,
	DoubleDown,
	DoubleUp,
	RecycleBin,
	MenuUnfoldOne,
	MenuFoldOne,
	Down,
	Plus,
	Up,
	Log,
	Permissions,
	Family,
	EditName,
	List,
	ListTwo,
	OrderedList,
	HamburgerButton,
	ApplicationMenu,
	DataFile,
	Theme,
	Platte,
	FullScreen,
	OffScreen,
	Printer,
	SettingConfig,
	Export,
	Upload,
	Download,
	Close,
	ExpandDown,
	ExpandUp,
	CloseOne,
	Avatar,
	ApplicationTwo,
	Switch,
	DirectionAdjustment,
	DirectionAdjustmentThree,
	Minus,
	MinusTheTop,
	LinkRight,
	Logout,
	Code,
	CodeOne,
	Mark,
	Components,
	EveryUser,
	Recycling,
	VideoTwo,
	Movie,
	Play,
	Video,
	AudioFile,
	FileAdditionOne,
	FileAddition,
	Local,
	MapDraw,
	Aiming,
	Bill,
	HoldInterface,
	Certificate
} from '@icon-park/vue-next';
import { App } from 'vue';
// 前缀
const prefix = 'icon-park-';
// 组件映射
const IconParkMap: { [key: string]: any } = {
	'all-application': AllApplication,
	bookmark: Bookmark,
	'bookmark-one': BookmarkOne,
	config: Config,
	'delete-one': DeleteOne,
	delete: Delete,
	dislike: Dislike,
	'dislike-two': DislikeTwo,
	female: Female,
	home: Home,
	'hourglass-full': HourglassFull,
	lightning: Lightning,
	like: Like,
	loading: Loading,
	'loading-one': LoadingOne,
	'loading-four': LoadingFour,
	male: Male,
	more: More,
	'more-app': MoreApp,
	'more-one': MoreOne,
	'more-two': MoreTwo,
	pic: Pic,
	power: Power,
	'preview-close-one': PreviewCloseOne,
	'preview-open': PreviewOpen,
	radar: Radar,
	refresh: Refresh,
	save: Save,
	'save-one': SaveOne,
	search: Search,
	setting: Setting,
	system: System,
	tag: Tag,
	'tag-one': TagOne,
	tips: Tips,
	tool: Tool,
	translate: Translate,
	'zoom-in': ZoomIn,
	'zoom-out': ZoomOut,
	caution: Caution,
	harm: Harm,
	protect: Protect,
	report: Report,
	'accept-email': AcceptEmail,
	'add-picture': AddPicture,
	chinese: Chinese,
	'chinese-one': ChineseOne,
	copy: Copy,
	'copy-one': CopyOne,
	'email-push': EmailPush,
	english: English,
	add: Add,
	plus:Plus,
	edit: Edit,
	'double-down':DoubleDown,
	'double-up':DoubleUp,
	'recycle-bin':RecycleBin,
	'menu-unfold-one':MenuUnfoldOne,
	'menu-fold-one':MenuFoldOne,
	'down':Down,
	'up':Up,
	'log':Log,
	'permissions':Permissions,
	'family':Family,
	'edit-name':EditName,
	'list':List,
	'list-two':ListTwo,
	'ordered-list':OrderedList,
	'hamburger-button':HamburgerButton,
	'application-menu':ApplicationMenu,
	'data-file':DataFile,
	theme:Theme,
	platte:Platte,
	'full-screen':FullScreen,
	'off-screen':OffScreen,
	printer:Printer,
	'setting-config':SettingConfig,
	export:Export,
	upload:Upload,
	download:Download,
	close:Close,
	'close-one':CloseOne,
	'expand-down':ExpandDown,
	'expand-up':ExpandUp,
	'avatar':Avatar,
	'application-two':ApplicationTwo,
	'switch':Switch,
	'direction-adjustment':DirectionAdjustment,
	'direction-adjustment-three':DirectionAdjustmentThree,
	'minus':Minus,
	'minus-the-top':MinusTheTop,
	'link-right':LinkRight,
	'logout':Logout,
	'code':Code,
	'code-one':CodeOne,
	'mark':Mark,
	'components':Components,
	'every-user':EveryUser,
	recycling:Recycling,
	video:Video,
	'video-two':VideoTwo,
	movie:Movie,
	play:Play,
	'audio-file':AudioFile,
	'file-addition-one':FileAdditionOne,
	'file-addition':FileAddition,
	local:Local,
	'map-draw':MapDraw,
	aiming:Aiming,
	bill:Bill,
	'hold-interface':HoldInterface,
	certificate:Certificate
};
// icon 组件名称
export const IconParkMapKeys = Object.keys(IconParkMap);
// 注册组件
export function IconPark(app: App) {
	for (let key of IconParkMapKeys) {
		app.component(prefix + key, IconParkMap[key]);
	}
}
